#pragma once
#ifdef WIN32
#include "DeviceDx11.h"
#elif OPENGLES
#include "DeviceOpenGLES.h"
#endif //  
namespace mini
{
#ifdef WIN32
	class CDevice : public CDeviceDx11
#elif OPENGLES
	class CDevice : public CDeviceOpenGLES
#endif //  
	{
	public:
		CDevice();
		virtual ~CDevice();
		DeviceConfig&	getConfig();
		INT				getCurrentCullMode() { return mCurrentCullMode; }
		INT				getCurrentDepthStatus() { return mCurrentDepthStatus; }
		INT				getCurrentTransparent() { return mCurrentTransparent; }
		virtual void	setCommandList(CommandList* pCmdList, int index ) override;
		virtual void	executeCommandList(CommandList* pCmdList) override;
		virtual void	useContext(DeviceContext* pContext) override;

	private:
		DeviceConfig	mConfig;
	};
}



